package com.huilian.iotbox.data.dto;

import com.huilian.iotbox.data.vo.CommodityProjectUpDownVo;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @author ：yjzhang
 * @date ：Created in 2023/5/10 0010 11:01
 * @description：pos机商品业务对象
 * @version: 1.0
 */
@Data
public class CommodityItemDto {

    private Integer id;

    /**
     * 场地Id
     */
    private Integer merchantStoreId;

    /**
     * 用户Id
     */
    private Integer userId;

    /**
     * 商品分组ID
     */
    private Integer commodityGroupId;

    /**
     * 零售价
     */
    private BigDecimal retailPrice;

    /**
     * 商品名称
     */
    private String name;

    /**
     * 充值币
     */
    private Integer rechargeCoin;

    /**
     * 赠送币
     */
    private Integer giveCoin;

    /**
     * 套餐推荐层次  1 是最前
     */
    private Integer sort;

    /**
     * 成本价
     */
    private BigDecimal costPrice;

    /**
     * 开启兑换
     */
    private Integer openExchange;

    /**
     * 积分兑换价格
     */
    private Integer integralConversionPrice;

    /**
     * 游戏币兑换价格
     */
    private Integer coinConversionPrice;

    /**
     * 彩票兑换价格
     */
    private Integer lotteryConversionPrice;
    /**
     * 开启回收
     */
    private Boolean openRecovery;

    /**
     * 回收价格
     */
    private Integer recoveryPrice;

    /**
     * 条形码
     */
    private String barCode;

    /**
     * 删除状态：0、未删除；1、已删除
     */
    private Integer deleteStatus;

    /**
     * 图片
     */
    private String fileName;
    /**
     * 分组类型ID，1、游戏币（固定），2、通用，3、套票
     */
    private Integer goodsType;
    /**
     * 库存
     */
    private Integer stock;
    /**
     * 安全库存
     */
    private Integer safeStock;
    /**
     * 游玩次数
     */
    private Integer numberOfPlay;
    /**
     * 指定到期时间
     */
    private Date specifyDueTime;
    private Integer ticketPackageType;
    private String cgName;
    private String fullName;
    private Boolean flagCheck;  //高亮
    private Integer amount;
    private String totalNumberOfPlay;

    /**
     * 指定到期时间
     */
    private Integer specifyDueTimeDays;

    private List<CommodityProjectUpDownVo> commodityProjectUpDownVoList;

    private Long commodityId;
    private Integer productServeId;
    private Integer quantity;
    private BigDecimal retailVIPPrice;
}
